package android07.newtop.model;

import android07.newtop.model.bean.NewsBean;
import android07.newtop.model.bean.PictureClassify;
import android07.newtop.model.bean.PictureDetail;
import android07.newtop.model.bean.PictureGallery;
import android07.newtop.model.bean.WeatherInfoBean;
import retrofit2.Call;
import retrofit2.http.GET;
import retrofit2.http.Headers;
import retrofit2.http.OPTIONS;
import retrofit2.http.Query;

/**
 * 号称Android最强大的网络请求框架  retrofit2，的一个接口
 * <p>
 * 这个类的意义 也是非常重要的
 * <p>
 * 这个接口是将这个app 所有页面的 网络请求 都定义到这里，
 * 实现网络请求的统一管理
 * <p>
 * <p>
 * <p>
 * 用法：
 * get请求 要使用 GET的注解 并且配上后面的目录 如  根网址/toutiao/index  那么这里要配上toutiao/index
 * Query代表的是上传的参数
 * <p>
 * 如果你不会可以完全参照一个列子 即可，其他的都是一样的写法
 *
 * @GET("toutiao/index") Call<NewsBean> getNewsBeanList(@Query("type") String  type, @Query("key") String key);
 */

public interface ApiService {

    String PICTURE_ROOT_LOADURL="http://tnfs.tngou.net/img";


    /**
     * 获得新闻信息集
     * <p>
     * 用法
     */
    @GET("toutiao/index")
    Call<NewsBean> getNewsBeanList(@Query("type") String type, @Query("key") String key);


    /**
     * 获得天气情况
     * <p>
     * 接口地址：http://op.juhe.cn/onebox/weather/query
     * 支持格式：json/xml
     * 请求方式：http get/post
     * 请求示例：http://op.juhe.cn/onebox/weather/query?cityname=%E6%B8%A9%E5%B7%9E&key=您申请的KEY
     * <p>
     * cityname	string	是	要查询的城市，如：温州、上海、北京，需要utf8 urlencode
     * key	        string	是	应用APPKEY(应用详细页查询)
     * dtype	    string	否	返回数据的格式,xml或json，默认json
     * <p>
     * 用法
     * 缓存20s
     */
    @Headers("cache:20")
    @GET("onebox/weather/query")
    Call<WeatherInfoBean> getWeatherInfoBeanList(@Query("cityname") String cityname, @Query("key") String key);


    /**
     * 获取到图片的分类
     * <p>
     * 如：
     * <p>
     * {"status":true,"tngou":[
     * {"description":"……","id":1,"keywords":"……","name":"性感美女","seq":1,"title":"……"},
     * {"description":"……","id":2,"keywords":"……","name":"韩日美女","seq":2,"title":"……"},
     * {"description":"……","id":3,"keywords":"……","name":"丝袜美腿","seq":3,"title":"……"},
     * {"description":"……","id":4,"keywords":"……","name":"美女照片","seq":4,"title":"……"},
     * {"description":"……","id":5,"keywords":"……","name":"美女写真","seq":5,"title":"……"},
     * {"description":"……","id":6,"keywords":"……","name":"清纯美女","seq":6,"title":"……"},
     * {"description":"……","id":2,"keywords":"……","name":"性感车模","seq":7,"title":"……"}
     * ]}
     * <p>
     * 请求接口：
     * http://www.tngou.net/tnfs/api/classify
     *
     * @return
     */
    @GET("tnfs/api/classify")
    Call<PictureClassify> getPictureClassify();

    /**
     * 通过分类id获取 图片列表
     * http://www.tngou.net/tnfs/api/list?page=1&rows=10
     * @return
     */
    @GET("/tnfs/api/list")
    Call<PictureGallery> getPictureGallery(@Query("page") String page, @Query("rows") String rows, @Query("id") String id);
    /**
     * 通过图片id获取图片详情
     * http://www.tngou.net/tnfs/api/show?id=100
     * @return
     */
    @GET("/tnfs/api/show")
    Call<PictureDetail> getPictureDetail(@Query("id") int id);

}